Method and apparatus for plug and play, networkable iso 18000-7 connectivity

ABSTRACT

A device may comprise a Universal Serial Bus (USB) interface and a wireless interface operable to communicate in accordance with the ISO 18000-7 standard. The device may be operable to receive a command via the USB interface and transmit the command via the wireless interface. The device may be operable to receive data via the wireless interface and transmit the data via the USB interface. A form factor of the USB device may be such that it can be plugged directly into a USB port without any external cabling between the USB device and said USB port.

CLAIM OF PRIORITY

This patent application makes reference to, claims priority to andclaims benefit from U.S. Provisional Patent Application Ser. No.61/463,224 entitled “USB Device for Plug & Play, Networkable DASH?Connectivity,” and filed on Feb. 15, 2011.

The above-referenced application is hereby incorporated herein byreference in its entirety.

INCORPORATION BY REFERENCE

This patent application also makes reference to:

U.S. Provisional Patent Application Ser. No. 61/464,376 entitled“Advanced Communication System for Wide-area Low Power WirelessApplications and Active RFID” and filed on Mar. 2, 2011;

U.S. patent application Ser. No. 13/267,640 entitled “Method andApparatus for Adaptive Searching of Distributed Datasets” and filed Oct.6, 2011;

U.S. patent application Ser. No. 13/270,802 entitled “Method andApparatus for a Multi-band, Multi-mode Smartcard” and filed Oct. 11,2011;

U.S. patent application Ser. No. 13/354,513 entitled “Method andApparatus for Memory Management” and filed on Jan. 20, 2012; and U.S.patent application Ser. No. 13/354,615 entitled “Method and Apparatusfor Discovering People, Products, and Services via a Localized WirelessNetwork” and filed on Jan. 20, 2012.

Each of the above-referenced applications is hereby incorporated hereinby reference in its entirety.

FIELD OF THE INVENTION

Certain embodiments of the invention relate to wireless networking. Morespecifically, certain embodiments of the invention relate to a methodand apparatus for plug and play, networkable ISO 18000-7 connectivity.

BACKGROUND OF THE INVENTION

Existing methods and systems for ISO 18000-7 communications are oflimited functionality and flexibility. Further limitations anddisadvantages of conventional and traditional approaches will becomeapparent to one of skill in the art, through comparison of such systemswith some aspects of the present invention as set forth in the remainderof the present application with reference to the drawings.

BRIEF SUMMARY OF THE INVENTION

A system and/or method is provided for plug and play, networkable ISO18000-7 connectivity, substantially as illustrated by and/or describedin connection with at least one of the figures, as set forth morecompletely in the claims.

These and other advantages, aspects and novel features of the presentinvention, as well as details of an illustrated embodiment thereof, willbe more fully understood from the following description and drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is block diagram of an exemplary USB device which enablescommunications in conformance with ISO 18000-7.

FIGS. 2A-2C depict exemplary form factors of a USB device which enablescommunications in conformance with ISO 18000-7.

FIG. 3 depicts an exemplary network switching and/or routing deviceoperable to provide network connectivity to an ISO 18000-7 enabled USBdevice.

FIG. 4 is a flowchart illustrating exemplary steps for ISO 18000-7communications via an ISO 18000-7 enabled USB device connected to acomputing device.

FIG. 5 is another flowchart illustrating exemplary steps for ISO 18000-7communications via an ISO 18000-7 enabled USB device connected to acomputer.

FIG. 6A is a flowchart illustrating exemplary steps for ISO 18000-7communications via an ISO 18000-7 enabled USB device connected to anetwork switch and/or router.

FIG. 6B is another flowchart illustrating exemplary steps for ISO18000-7 communications via an ISO 18000-7 enabled USB device connectedto a network switch and/or router.

DETAILED DESCRIPTION OF THE INVENTION

As utilized herein the terms “circuits” and “circuitry” refer tophysical electronic components (i.e. hardware) and any software and/orfirmware (“code”) which may configure the hardware, be executed by thehardware, and or otherwise be associated with the hardware. As utilizedherein, “and/or” means any one or more of the items in the list joinedby “and/or”. As an example, “x and/or y” means any element of thethree-element set {(x), (y), (x, y)}. As another example, “x, y, and/orz” means any element of the seven-element set {(x), (y), (z), (x, y),(x, z), (y, z), (x, y, z)}. As utilized herein, the terms “block” and“module” refer to functions than can be implemented in hardware,software, firmware, or any combination of one or more thereof. Asutilized herein, the term “exemplary” means serving as a non-limitingexample, instance, or illustration. As utilized herein, the terms“e.g.,” and “for example,” introduce a list of one or more non-limitingexamples, instances, or illustrations.

FIG. 1 is block diagram of an exemplary USB device which enablescommunications in conformance with ISO 18000-7. The USB device 102comprises a clock 104, a USB interface 106, a CPU 108, a memory 110, anda wireless interface 112 comprising a processor 114, an analog front end(AFE) 116, and an antenna 118.

The clock 104 may be operable to generate one or more oscillatingsignals which may be utilized to control synchronous circuitry of theUSB device 102. The clock 104 may comprise, for example, one or morecrystal oscillators, phase-locked loops, and/or direct digitalsynthesizers.

The USB interface 106 may be operable to receive information via the bus120, process the information to generate one or more USB packets, andtransmit the USB packets onto a USB bus. Similarly, the USB interface106 may be operable to receive USB packets, process the packets recoverreceived information, and output the information on the bus 120.

The CPU 108 may be operable to control operation of the device 102. TheCPU 108 may, for example, execute instructions and perform arithmeticand/or logic operations in response to the executed instructions. TheCPU 108 may generate one or more control signals for controlling theoperation of the device 102.

The memory module 110 may comprise volatile memory operable to storeruntime data and/or non-volatile memory operable to store data that ispersistent over multiple power cycles of the device 102. The memorymodule 110 may comprise addressing/control logic which implements readand write operations in response to read and write commands issued tothe memory module 110. In an exemplary embodiment, the memory may bemanaged as described in the above-incorporated U.S. patent applicationSer. No. 13/354,513. In an exemplary embodiment, the memory module 110may store data arranged as a Universal Data Block (UDB) as, for example,described in the above-incorporated U.S. patent application Ser. No.13/354,615. In an exemplary embodiment, the memory module 110 may storedevice, configuration, interface, and/or endpoint descriptors associatedwith a USB Device Class to which the device 102 belongs. The descriptorsfor the various USB Device Classes are set forth in the USB Device ClassDefinitions maintained by the USB Implementer's Forum (USB-IF).

The wireless interface 112 may be operable to communicate wirelessly inaccordance with, for example, protocols specified in ISO 18000-7, and/orprotocols described in the above-incorporated U.S. Provisional PatentApplication 61/464,376 filed on Mar. 2, 2011 (collectively referred toherein as ISO 18000-7). The invention is not necessarily limited inregard to the frequencies on which the wireless interface 112 maycommunicate.

The processor 114 may comprise circuitry operable to interface with theAFE 116 to receive and transmit data, and to process received andto-be-transmitted data. For transmission, the processor 114 may beoperable to receive data via the bus 120, packetize and/or otherwiseprocess the data to prepare it for transmission in accordance with thewireless protocol(s) in use, and output the data to the AFE 116 fortransmission. For reception, the processor 114 may be operable toreceive data via the AFE 116, process the received data in accordancewith the wireless protocol(s) in use, and output received data onto thebus 120. Although FIG. 1 depicts the antenna 118 as being integratedwith the device 102, as shown in FIGS. 2A-2C, various USB devices mayhave internal antennas, external but affixed antennas, and/or aconnector for connecting to a removable external antenna.

Upon the device 102 being connected to a USB bus (e.g., plugged into aUSB port of a computing device), the USB interface 106 may participatein enumeration of the device 102 in accordance with USB specifications.Enumeration may comprise descriptors being sent by the device 102. In anexemplary embodiment, the descriptors stored in, and transmitted by thedevice 102 during enumeration, may be as set forth in the USB DeviceClass Definition for Printing Devices, for example. In such anembodiment, after setup of the USB connection, the messages exchangedover the USB bus, and the manner in which the messages are exchanged,may be in accordance with the USB Device Class Definition for PrintingDevices, for example. In other exemplary embodiments, the device 102 mayuse a different USB device class definition such as, for example, thedevice class definition for mass storage devices or the device classdefinition for human-interface devices.

During operation, the device 102 may perform actions in response to USBpackets received via the USB interface 106. The USB packets may, forexample, comprise an instruction in accordance with an applicationprogramming interface (API) of the device 102. For example, in responseto such an instruction, the device 102 may generate and transmit one ormore ISO 18000-7 commands via the wireless interface 112. Additionallyor alternatively, the USB packets may, for example, comprise data to betransmitted via the wireless interface 112. The data may be, forexample, data retrieved from memory in response to a previously-receivedISO 18000-7 command In such instances, the data may be extracted fromthe USB packets by the USB interface 106 and/or the CPU 108, and thenconveyed to the wireless interface 112 where it may be processed (e.g.,packetized, encoded, etc.) and transmitted in accordance with ISO18000-7.

During operation, the device 102 may also perform actions in response toISO 18000-7 commands received via the wireless interface 112. Forexample, in response to a command received via the wireless interface112, the device 102 may perform a search of the memory 110 and maygenerate and transmit one or more response packets via the wirelessinterface 112. Additionally or alternatively, the device 102 maygenerate one or more USB packets in response to such a command. A USBhost device receiving such USB packets may perform a search of itsmemory and communicate the search results back to the device 102, whichmay then communicate the search results via the wireless interface 112.

In an exemplary embodiment, the device 102 may be operable to generate alog of a status of the device 102 and/or events occurring in the device102. For example, a description of commands generated and/or receivedand responses generated and/or received by the device 102 may be loggedin a text file. The text file may be stored in the memory 110 and/or maybe output via the USB interface 106 for storage to a device havinggreater memory resources.

In an embodiment of the invention, the memory 110 may be utilized tostore more recent and/or important data and older and/or less importantdata may be output via the USB interface 106 for storage in a memorythat is external to the device 102.

In an exemplary embodiment, the device 102 may transmit search requestsand/or receive, perform, and respond to search requests as is describedin the above-incorporated U.S. patent application Ser. No. 13/267,640.

In an exemplary embodiment, the device 102 may be an embodiment of thesmartcard described in the above-incorporated U.S. patent applicationSer. No. 13/270,802 and may comprise circuitry and/or functionalitydescribed therein.

FIGS. 2A-2B depict exemplary form factors of an exemplary USB devicewhich enables communications in conformance with ISO 18000-7. The USBdevice 102A comprises a connector 118 for connecting to an externalantenna and a male USB connector for plugging into a USB port. The USBdevice 102B comprises an affixed and movable antenna 120 and a male USBconnector for plugging into a USB port. The USB device 102C comprises aninternal antenna (not shown) and a male USB connector for plugging intoa USB port. Each of the devices shown in FIGS. 2A-2B may, for example,have length, width, and height dimensions on the order of centimeters.

FIG. 3 depicts an exemplary network switching and/or routing deviceoperable to provide network connectivity to an ISO 18000-7 enabled USBdevice. The switching and/or routing device 302 comprises antennas 304 aand 304 b, USB ports 306 a-306 d, power port 308, and wired networkingport 310.

The antennas 304 a and 304 b may enable the device 302 to transmit andreceive signals in accordance with one or more wireless protocols. Forexample, the antennas 304 a and 304 b may enable the device 302 tocommunicate in conformance with IEE 802.11 standards.

The USB ports 306 a-306 d may enable the device 302 to communicate withother devices via one or more USB busses. The device 302 may also beoperable to supply power to other devices via the USB ports 306 a-306 d.

The device 302 may be operable to receive DC and/or AC power via thepower port 308. The power port 308 may, for example, connect to an AC/DCconverter which, in turn, connects to a 120 VAC wall outlet.

The wired networking port 310 may enable the device 302 to connect to awired network such as, for example, an Ethernet network, a DOCSISnetwork, a DSL network, a MoCA network, etc.

In operation, circuitry of the device 302 may be operable to switch(e.g., at OSI layer 2) and/or route (e.g., at OSI layer 3) packetsbetween a wireless network (via the antennas 304 a and 304 b), a wirednetwork (via the port 310), and one or more USB busses (via the USBports 306 a-306 d).

In an exemplary embodiment, each of the USB ports 306 a-306 d may beassigned a layer 2 address (e.g., a MAC) and/or a layer 3 address (e.g.,an IP address). Accordingly, a remote device coupled to the device 302via the antennas 304 a and 304 b or via the port 310 may be enabled tosend data to a particular one of USB ports 306 a-306 d by sending one ormore packets to the layer 2 and/or layer 3 address associated with thatparticular USB port. For example, with the ISO 18000-7 device connectedto USB port 306 c as shown in FIG. 3, network devices may send messagesto the USB device 102 by sending the messages to the layer 2 and/orlayer 3 address associated with the USB port 306 c.

In an exemplary embodiment, the device 302 may be operable to associateone or more of the USB ports 306 a-306 d with a destination layer 2and/or layer 3 address. That is, packets received via a particular oneof the USB ports 306 a-306 d may be automatically forwarded to the layer2 and/or layer 3 address(es) associated with that particular USB port.Additionally and/or alternatively, the device 302 may be operable toparse USB packets received via the USB ports 306 a-306 d to extract adestination layer 2 and/or layer 3 address(es) from the packets, andthen forward the packets to that layer 2and/or layer 3 address(es).Accordingly, a device coupled to a particular one of the USB ports 306a-306 d may be enabled to send messages to remote devices via a wiredand/or wireless network. For example, with the ISO 18000-7 deviceconnected to USB port 306 c as shown in FIG. 3, the device 102 mayoutput USB packets to the device 302 which may then forward the contentsof the USB packets to the address that is associated with the USB port306 c and/or that is indicated in the USB packets.

FIG. 4 is a flowchart illustrating exemplary steps for ISO 18000-7communications via an ISO 18000-7 enabled USB device connected to acomputing device. The exemplary steps begin with step 402 in which anISO 18000-7 enabled USB device 102 is connected to a USB port of acomputing device (e.g., a laptop, tablet, smartphone, etc.).

In step 404, the USB device 102 and the computing device exchangecontrol messages to identify and enumerate the USB device 102.

In step 406, an application running on the computing device (e.g., anapplication which has a user interface such as, for example, isdescribed in the above-incorporated U.S. patent application Ser. No.13/267,640) outputs data intended to trigger transmission of an ISO18000-7 command. For example, the combination of the computing deviceand the USB device 102 may operate as an ISO 18000-7 interrogator andthe message may be a command to interrogate ISO 18000-7 tags withinrange of the wireless interface 112.

In step 408, a USB bus adaptor of the computing device encapsulates thedata output by the application into one or USB packets and transmits thepackets to the device 102 via the USB bus.

In step 410, the USB device 102 receives the USB packets via the USBinterface 106. The USB interface 106 and/or the CPU 108 processes thereceived packets to detect the data output by the application in step406.

In step 412, the device 102 generates an ISO 18000-7 command based onthe data received from the computing device. The ISO 18000-7 command istransmitted via the wireless interface 112.

In step 414, the device 102 receives one or more ISO 18000-7 responsesvia the wireless interface 112. The responses may have been transmittedby, for example, one or more ISO 18000-7 tags within communication rangeof the wireless interface 112.

In step 416, the device 102 processes the received response(s). Forexample, the device 102 may remove headers and/or other fields torecover the response data.

In step 418, the device 102 generates one or more USB packets based onthe received responses. For example, the response data from the ISO18000-7 responses may be encapsulated in the USB packet(s). The USBpacket(s) are sent to the computing device via the USB interface 106.

In step 420, the computing device processes the received USB packet(s).For example, the headers of the USB packet(s) may be removed to recoverthe response data.

In step 422, the data recovered from the USB packets is conveyed to theapplication and the application presents the response(s) to a user.

FIG. 5 is another flowchart illustrating exemplary steps for ISO 18000-7communications via an ISO 18000-7 enabled USB device connected to acomputer. The exemplary steps begin with step 502 in which an ISO18000-7 enabled USB device 102 is connected to a USB port of a computingdevice (e.g., laptop, tablet, smartphone, etc.).

In step 504, the USB device 102 and the computing device exchangecontrol messages to identify and enumerate the USB device 102.

In step 506, the USB device 102 receives an ISO 18000-7 command via thewireless interface 112. For example, the USB device 102 may operate asan ISO 18000-7 tag and receive a command from an ISO 18000-7interrogator.

In step 508, the memory 110 of the USB device 102 is searched inresponse to the command received in step 506. For example, the memory110 may be searched for a match of character, string, and/or numbercontained in the received command.

In step 510, it is determined whether a match was found in the memory110. If a match was found, then in step 512, a response indicating thata match was found, and possibly containing addition response data, isgenerated and transmitted via the wireless interface 112.

Returning to step 510, if no match was found in the memory 110, then instep 514 the device 102 generates and sends one or more USB packet(s) tothe computing device. The USB packet(s) may indicate the ISO 18000-7command that was received in step 506.

In step 516, memory of the computing device is searched in response tothe ISO 18000-7 command communicated in the USB packet(s). For example,the memory 110 may be searched for a match of character, string, and/ornumber contained in the received command.

In step 518, it is determined whether a match was found in the memory ofthe computing device. If a match was found, then, in step 520, aresponse indicating that a match was found, and possibly containingaddition response data, is communicated to the USB device 102 in theform of one or more USB packets.

In step 522, the response data received from the computing device instep 520 is transmitted via the wireless interface 112 in the form ofone or more ISO 18000-7 response packets.

Returning to step 518, if no match was found in the memory of thecomputing device, then, in step 524, the computing device sends one ormore USB packets indicating such to the USB device 102.

In step 526, the USB device 102 may send an ISO 18000-7 responseindicating that a match was not found. The USB device 102 may not sendsuch a response if, for example, the command received in step 506 is onewhich requires a response only if a match was found.

FIG. 6A is a flowchart illustrating exemplary steps for ISO 18000-7communications via an ISO 18000-7 enabled USB device connected to anetwork switch and/or router. The exemplary steps begin with step 602 inwhich the ISO 18000-7 enabled USB device 102 is connected to the USBport 306 c of the switch/router 302.

In step 604, the USB device 102 and the switch/router 302 exchangecontrol messages to identify and enumerate the USB device 102.

In step 606, the switch/router 302 may assign a network address (e.g., aMAC address and/or an IP address) to the USB device 102. The assignmentmay comprise, for example, associating the port 306 c and the networkaddress in a routing and/or switching table (e.g., in the case of an IPaddress) of the device 302. In other embodiments, a network address ofthe USB port 306 c may be static. During step 606, the switch/router 302may notify other devices that an ISO 18000-7 device is connected to theUSB port 306 c.

In step 608, an application running on a computing device that isconnected to the switch/router 302 via a wired or wireless connectionoutputs data to trigger the transmission of an ISO 18000-7 command.

In step 610, the end system packetizes the command into one or more USBpackets and then conveys the USB packets to a network adaptor of the endsystem.

In step 612, the network adaptor of the end system packetizes the USBpackets into one or more network packets and transmits the networkpackets in accordance with whatever networking protocol(s) is/are in use(e.g., WiFi, wired Ethernet, etc.). The destination of the packets isthe network address associated with USB port 306 c

In step 614, the switch/router receives, via the antennas 304 a and 304b or the port 310, the packets transmitted by the end system in step612.

In step 616, the switch/router 302 decapsulates the received packets torecover the USB packets generated by the end system in step 610.

In step 618, the switch/router 302 conveys the USB packets to the USBdevice 102 via the USB port 306 c.

In step 620, the device 102 decapsulates the USB packets to recover thedata generated by the application in step 608.

In step 622, the device 102 generates one or more ISO 18000-7 commandsbased on the received data and transmits the commands via the wirelessinterface 112.

FIG. 6B is a flowchart illustrating exemplary steps for ISO 18000-7communications via an ISO 18000-7 enabled USB device connected to anetwork switch and/or router. The exemplary steps begin with step 630 inwhich the ISO 18000-7 enabled USB device 102 is connected to the USBport 306 c of the switch/router 302 operable to perform networkswitching and/or routing operations (e.g., Ethernet-based switchingand/or IP-based routing).

In step 632, the USB device 102 and the switch/router 302 exchangecontrol messages to identify and enumerate the USB device 102.

In step 634, a network address (e.g., a MAC address and/or an IPaddress) may be assigned to the USB port 306 c of the switch/router 302.The assignment may comprise, for example, associating the port 306 c andthe network address in a routing and/or switching table (e.g., in thecase of an IP address) of the device 302. In other embodiments, anetwork address of the USB port 306 c may be static. During step 606,the switch/router 302 may notify other devices that an ISO 18000-7device is connected to the USB port 306 c.

In step 636, the switch/router 302 may be configured to pair the USBport 306 c with a network address assigned to an end system (e.g.,laptop, tablet, smartphone, server, etc.) connected to the switch/router302. In this manner, packets received by the switch/router 302 via theUSB port 306 c may be automatically forwarded to the paired networkaddress without the USB device 102 having to concern itself with networkaddresses. That is, the switching/routing may be transparent to the USBdevice 102 such that it thinks it is connected directly to the endsystem via a USB bus. In another exemplary embodiment, USB packetsreceived via the port 306 c may contain destination network addresseswhich the switch/router 302 may inspect to determine which address tosend the packets to.

In step 638, the device 102 transmits an ISO 18000-7 command.

In step 640, the device 102 receives one or more ISO 18000-7 responsesvia the wireless interface 112. The responses may have been transmittedby, for example, one or more ISO 18000-7 tags within communication rangeof the wireless interface 112.

In step 642, the device 102 processes the received response(s). Forexample, the device 102 may remove headers and/or other fields torecover the response data.

In step 644, the device 102 generates one or more USB packets in basedon the received responses. For example, the response data from the ISO18000-7 responses may be encapsulated in the USB packet(s). The USBpacket(s) may be sent to the switch/router via the USB port 306 c.

In step 646, the switch/router 302 packetizes and transmits the receivedUSB packet(s) via the antennas 304 a and 304 b or the port 310 inaccordance with the network protocol(s) being used (e.g., WiFi orEthernet). The network packet(s) are transmitted to the network addresspaired with the USB port 306 c in step 636.

In step 648, the end system receives the packets via the wired orwireless network.

In step 650, the end system process the received packets to recover theISO 18000-7 response data. For example, the end system removes theformatting of the network protocol(s) in use (e.g., WiFi, Ethernet,etc.) and then decapsulates the USB packet(s) to recover the responsedata.

In step 652, the response data may be conveyed to the application, whichmay present the response(s) to a user of the end system.

In accordance with an exemplary embodiment of the invention, thecircuitry of the device 102 comprises a Universal Serial Bus (USB)interface 106 and a wireless interface 112 operable to communicate inaccordance with the ISO 18000-7 standard. The device 102 may be operableto receive a command via the USB interface 106 and transmit the commandvia the wireless interface 112. A form factor of the USB device 102 maybe such that it can be plugged directly into a USB port without anyexternal cabling between the USB device and said USB port (i.e., mayhave a form factor similar of a “USB stick” or a “thumb drive”). Duringenumeration of the USB device 102, it may communicate one or moredescriptors according to the USB Device Class Definition for PrintingDevices and the command may be received via a Bulk OUT pipe of the USBbus.

The device 102 may comprise a memory 110 in which a filesystem resides.The device 102 may be operable to search the filesystem in response tothe command received via the USB interface 106 and/or in response to acommand received via the wireless interface 112. The one or morecircuits may be operable to output results of the search via thewireless interface 112 and/or the USB interface 106. The device 102 maybe operable to read data from the memory 110 and output the data via theUSB interface 106 and/or the wireless interface 112. The device 102 maybe operable to receive data via the USB interface 106 and/or thewireless interface and write the received data to the memory 110. Theone or more circuits may be operable to generate log data of activitiesand/or events occurring in the USB device 102 and output the log datavia the USB interface 106.

The USB device 102 may be connected to a network switch and/or router302 via the USB interface 106 and a USB port 306 c of the network switchand/or router 302. The USB port 306 c may be assigned a network addressby the network switch and/or router 302. The network switch and/orrouter may be operable to receive network packets destined for theassigned network address and convey contents of the received networkpackets to the USB device 102 via the USB interface 106 and the USB port306 c.

The USB device 102 may be a client device connected to the networkswitch and/or router 302 via the USB interface 106. The network switchand/or router 302 may be operable to associate the client USB device 102with a network address of a host USB device (e.g., a computing deviceconnected to the network switch and/or router via a wired connection toport 310). The network switch and/or router 302 may be operable toreceive data from the client USB device 102 via the USB interface 106.The network switch and/or router 302 may be operable to transmit thereceived data to the network address of the host USB device (e.g., viathe port 310).

Other embodiments of the invention may provide a non-transitory computerreadable medium and/or storage medium, and/or a non-transitory machinereadable medium and/or storage medium, having stored thereon, a machinecode and/or a computer program having at least one code sectionexecutable by a machine and/or a computer, thereby causing the machineand/or computer to perform the steps as described herein for plug andplay, networkable ISO 18000-7 connectivity.

Accordingly, the present invention may be realized in hardware,software, or a combination of hardware and software. The presentinvention may be realized in a centralized fashion in at least onecomputing system, or in a distributed fashion where different elementsare spread across several interconnected computing systems. Any kind ofcomputing system or other apparatus adapted for carrying out the methodsdescribed herein is suited. A typical combination of hardware andsoftware may be a general-purpose computing system with a program orother code that, when being loaded and executed, controls the computingsystem such that it carries out the methods described herein. Anothertypical implementation may comprise an application specific integratedcircuit or chip.

The present invention may also be embedded in a computer programproduct, which comprises all the features enabling the implementation ofthe methods described herein, and which when loaded in a computer systemis able to carry out these methods. Computer program in the presentcontext means any expression, in any language, code or notation, of aset of instructions intended to cause a system having an informationprocessing capability to perform a particular function either directlyor after either or both of the following: a) conversion to anotherlanguage, code or notation; b) reproduction in a different materialform.

While the present invention has been described with reference to certainembodiments, it will be understood by those skilled in the art thatvarious changes may be made and equivalents may be substituted withoutdeparting from the scope of the present invention. In addition, manymodifications may be made to adapt a particular situation or material tothe teachings of the present invention without departing from its scope.Therefore, it is intended that the present invention not be limited tothe particular embodiment disclosed, but that the present invention willinclude all embodiments falling within the scope of the appended claims.

What is claimed is:
 1. A USB device comprising: one or more circuitscomprising a Universal Serial Bus (USB) interface and a wirelessinterface operable to communicate in accordance with the ISO 18000-7standard, said one or more circuits being operable to: receive a commandvia said USB interface; and transmit said command via said wirelessinterface.
 2. The system of claim 1, wherein a form factor of said USBdevice is such that it can be plugged directly into a USB port withoutany external cabling between said USB device and said USB port.
 3. Thesystem of claim 1, wherein, during enumeration of said USB device, saidone or more circuits communicate one or more descriptors according tothe USB Device Class Definition for Printing Devices.
 4. The system ofclaim 3, wherein said command is received via a Bulk OUT pipe of saidUSB bus.
 5. The system of claim 1, wherein said one or more circuitscomprise memory in which a filesystem resides.
 6. The system of claim 5,wherein said one or more circuits are operable to search said filesystemin response to said command received via said USB interface and/or inresponse to a command received via said wireless interface.
 7. Thesystem of claim 6, wherein said one or more circuits are operable tooutput results of said search via said wireless interface and/or saidUSB interface.
 8. The system of claim 5, wherein said one or morecircuits are operable to read data from said memory and output said datavia said USB interface and/or said wireless interface.
 9. The system ofclaim 5, wherein said one or more circuits are operable to receive datavia said USB interface and/or said wireless interface and write saidreceived data to said memory.
 10. The system of claim 1, wherein saidone or more circuits are operable to generate log data of activitiesand/or events occurring in said USB device and output said log data viasaid USB bus.
 11. The system of claim 1, wherein: said USB device isconnected to a network switch and/or router via said USB interface and aUSB port of said network switch and/or router; said USB port is assigneda network address by said network switch and/or router; said networkswitch and/or router is operable to receive network packets destined forsaid assigned network address and convey contents of said receivednetwork packets to said USB device via said USB interface and said USBport.
 12. The system of claim 1, wherein: said USB device is a clientdevice connected to a network switch and/or router via said USBinterface; said network switch and/or router is operable to associatesaid client USB device with a network address of a host USB device; saidnetwork switch and/or router is operable to receive data from saidclient USB device via said USB interface; and said network switch and/orrouter is operable to transmit said received data to said networkaddress of said host USB device.
 13. A USB device comprising: one ormore circuits comprising a Universal Serial Bus (USB) interface and awireless interface operable to communicate in accordance with the ISO18000-7 standard, said one or more circuits being operable to: receivedata via said wireless interface; and transmit said data via a USBinterface.
 14. The system of claim 13, wherein a form factor of said USBdevice is such that it can be plugged directly into a USB port withoutany external cabling between said USB device and said USB port.
 15. Thesystem of claim 13, wherein, during enumeration of said USB device, saidone or more circuits communicate one or more descriptors according tothe USB Device Class Definition for Printing Devices.
 16. The system ofclaim 15, wherein said data is transmitted via a Bulk IN pipe of saidUSB bus.
 17. The system of claim 13, wherein said one or more circuitscomprise memory in which a filesystem resides.
 18. The system of claim17, wherein said one or more circuits are operable to search saidfilesystem in response to a command received via said USB interfaceand/or in response to a command received via said wireless interface.19. The system of claim 18, wherein said one or more circuits areoperable to output results of said search via said wireless interfaceand/or said USB interface.
 20. The system of claim 17, wherein said oneor more circuits are operable to read data from said memory and outputsaid data via said USB interface and/or said wireless interface.